#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 创建3行
    ui->tableWidget->insertRow(0);
    ui->tableWidget->insertRow(1);
    ui->tableWidget->insertRow(2);

    // 创建3列
    ui->tableWidget->insertColumn(0);
    ui->tableWidget->insertColumn(1);
    ui->tableWidget->insertColumn(2);

    // 给3列设定列名
    ui->tableWidget->setHorizontalHeaderItem(0, new QTableWidgetItem("学号"));
    ui->tableWidget->setHorizontalHeaderItem(1, new QTableWidgetItem("姓名"));
    ui->tableWidget->setHorizontalHeaderItem(2, new QTableWidgetItem("年龄"));

    // 设置初始数据
    ui->tableWidget->setItem(0, 0, new QTableWidgetItem("1001"));
    ui->tableWidget->setItem(0, 1, new QTableWidgetItem("张三"));
    ui->tableWidget->setItem(0, 2, new QTableWidgetItem("20"));
    ui->tableWidget->setItem(1, 0, new QTableWidgetItem("1002"));
    ui->tableWidget->setItem(1, 1, new QTableWidgetItem("李四"));
    ui->tableWidget->setItem(1, 2, new QTableWidgetItem("21"));
    ui->tableWidget->setItem(2, 0, new QTableWidgetItem("1003"));
    ui->tableWidget->setItem(2, 1, new QTableWidgetItem("王五"));
    ui->tableWidget->setItem(2, 2, new QTableWidgetItem("19"));
}

Widget::~Widget()
{
    delete ui;
}
void Widget::on_pushButton_clicked()
{
    //当前 一共有 多少行
    int rowCount=ui->tableWidget->rowCount();
    //在 最后一行后 新增 行数
    //参数是下标，表示 新增的这行 是多少行
    ui->tableWidget->insertRow(rowCount);
}


void Widget::on_pushButton_3_clicked()
{
    //取到 选中的行号
    int curRow=ui->tableWidget->currentRow();
    //delete
    ui->tableWidget->removeRow(curRow);
}



void Widget::on_pushButton_2_clicked()
{
    //获取 一共有 多少列
    int colCount=ui->tableWidget->columnCount();
    //insert
    ui->tableWidget->insertColumn(colCount);
    //设置 列名，输入框中获取
    const QString& text=ui->lineEdit->text();
    ui->tableWidget->setHorizontalHeaderItem(colCount,new QTableWidgetItem(text));
    //根据count 找到所在列，头插 列名
}



void Widget::on_pushButton_4_clicked()
{
    int curCol=ui->tableWidget->currentColumn();
    ui->tableWidget->removeColumn(curCol);
}

//sum 就是反复调用接口
